<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2021/11/21
 * Time: 23:28
 */
namespace phpfuntions\mp_class;
class myphp_class
{

    /**
     *get_class_methods 函数：返回由类的方法名组成的数组　
     * @access public
     * @return
     */
    public static function get_class_methods ($class_name) {
        return get_class_methods($class_name );

    }

    /**
     *get_class_vars 函数：返回由类的默认属性组成的数组　
     * @access public
     * @return
     */
    public static function get_class_vars ($class_name) {
        return get_class_vars($class_name );

    }

    /**
     *get_class 函数：返回对象的类名　
     * @access public
     * @return
     */
    public static function get_class ($object = null) {
        return get_class($object  );

    }

    /**
     *get_declared_classes 函数：返回由已定义类的名字所组成的数组　
     * @access public
     * @return
     */
    public static function get_declared_classes () {
        return get_declared_classes( );

    }

    /**
     *get_declared_interfaces 函数：返回一个声明接口的数组　
     * @access public
     * @return
     */
    public static function get_declared_interfaces () {
        return get_declared_interfaces( );

    }

    /**
     * get_object_vars 函数：返回由对象属性组成的关联数组　　
     * @access public
     * @return
     */
    public static function get_object_vars ($object) {
        return get_object_vars( $object);

    }

    /**
     * get_parent_class 函数：返回对象或类的父类名　
     * @access public
     * @return
     */
    public static function get_parent_class ($object = null) {
        return get_parent_class( $object = null);

    }

    /**
     *interface_exists 函数：检查接口是否定义
     * @access public
     * @return
     */
    public static function interface_exists ($interface_name, $autoload = true) {
        return interface_exists( $interface_name, $autoload );

    }

    /**
     *is_a 函数：判断对象是否属于某一个类　
     * @access public
     * @return
     */
    public static function is_a ($object, $class_name, $allow_string = FALSE) {
        return is_a( $object, $class_name, $allow_string );

    }

    /**
     *is_subclass_of 函数：判断对象是否属于某一个类的子类
     * @access public
     * @return
     */
    public static function is_subclass_of ($object, $class_name, $allow_string = TRUE) {
        return is_subclass_of( $object, $class_name, $allow_string );

    }

    /**
     *method_exists 函数：检查类的方法是否存在
     * @access public
     * @return
     */
    public static function method_exists ($object, $method_name) {
        return method_exists($object, $method_name );
    }

    /**
     *property_exists 函数：检查对象或类是否具有指定的属性　
     * @access public
     * @return
     */
    public static function property_exists ($class, $property) {
        return property_exists($class, $property );

    }
}